﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace Tst.Models
{
    public class TipoErroRepository
    {

        private TstEntities context;


        public TipoErroRepository()
        {
            this.context = new TstEntities();
        }


        ~TipoErroRepository()
        {
            this.context.Dispose();
        }

        public void Save()
        {
            this.context.SaveChanges();
        }

        public IList<TipoErro> GetAll()
        {
            return this.context.TipoErro.ToList();
        }

        public TipoErro GetById(int cd_tipoErro)
        {
            return context.TipoErro.FirstOrDefault(t => t.cd_tipo_erro == cd_tipoErro);
        }

        public TipoErro GetByDescricao(string ds_descricao)
        {
            return this.context.TipoErro.FirstOrDefault(t => t.ds_descricao.Equals(ds_descricao));        
        }

        public TipoErro Insert(TipoErro tipoErro)
        {
            this.context.AddToTipoErro(tipoErro);
            return tipoErro;
        }

        public void Update(TipoErro tipoErro)
        {
            this.context.AttachUpdated(tipoErro);
        }

        public void Delete(int cd_tipoErro)
        {
            TipoErro tipoErro = this.GetById(cd_tipoErro);

            if (tipoErro != null)
            {   
                this.context.DeleteObject(tipoErro);
            }
        }


    }
}
